package com.dhcc.bpm.modules.safe.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.dhcc.bpm.modules.safe.entity.Flow;
import com.dhcc.bpm.modules.safe.vo.FlowVO;
import org.springblade.core.mp.base.BaseService;

/**
 * @ClassName IFlowService
 * @Description 流量管理表 服务类
 * @Author daina
 * @Date 2020/2/21 14:16
 * @Version V1.0
 * @Copyright: 2020 东华软件 . All rights reserved.
 */
public interface IFlowService extends BaseService<Flow> {

    /**
     * @Description 自定义分页
     * @Author daina
     * @Date 9:48 2020/3/3
     * @param page
     * @param flow
     * @return IPage<FlowVO>
     **/
    IPage<FlowVO> selectFlowPage(IPage<FlowVO> page, FlowVO flow);
    /**
     * @Description 自定义分页
     * @Author daina
     * @Date 9:48 2020/3/3
     * @param page
     * @param flow
     * @return IPage<FlowVO>
     **/
    IPage<FlowVO> pageBybasePrdt(IPage<FlowVO> page, FlowVO flow);

    /**
     * @Description 查询应用流量详情
     * @Author daina
     * @Date 9:48 2020/3/3
     * @param appId
     * @param env
     * @return com.dhcc.bpm.modules.safe.vo.FlowVO
     **/
    FlowVO selectAppFlowByAppId(String appId, String env);

    /**
     * @Description 查询应用接口流量详情
     * @Author daina
     * @Date 9:48 2020/3/3
     * @param flowVo
     * @return com.dhcc.bpm.modules.safe.vo.FlowVO
     **/
    FlowVO selectAppFlowByAppApi(FlowVO flowVo);

    /**
     * @Description 刷新限流
     * @Author daina
     * @Date 9:48 2020/3/3
     * @param flow
     * @return boolean
     **/
    int updateRefreshStatus(FlowVO flow);

    /**
     * @Description 刷新限流
     * @Author daina
     * @Date 9:49 2020/3/3
     * @param flow
     * @return boolean
     **/
     int refreshStatus(FlowVO flow);


    /**
     * @Description 查渠道
     * @Author wjh
     * @param page
     * @param flow
     * @return IPage<FlowVO>
     **/
    IPage<FlowVO> selectFlowPageByApp(IPage<FlowVO> page, FlowVO flow);
}
